package com.leo.erp.dto;

import java.util.List;
import java.util.Map;

import com.leo.erp.entity.Account;
import com.leo.erp.enums.AccountStateEnum;

public class AccountExecution {
	//结果状态
	private int state;
	//状态标识
	private String stateInfo;
	//日志数量
	private int count;
	//总页数
	private long pages;
	//总记录数
	private long total;
	//操作(增删改的时候使用)
	private Account account;
	//列表(查询列表的时候使用)
	private List<Account> accountList;
	
	private Double thisMonthAmount;//本月发生额
	private Double currentAmount;//当前发生额
	
	//分页列表
	private List<Map<String, Object>> accountPageList;
	
	//map
	private Map<String, Object> accountMap;
				
	//构造函数
	public AccountExecution() {
					
	}
				
	//操作失败的时候使用的构造器
	public AccountExecution(AccountStateEnum stateEnum) {
		this.state = stateEnum.getState();
		this.stateInfo = stateEnum.getStateInfo();
	}
				
	//操作成功的时候使用的构造器
	public AccountExecution(AccountStateEnum stateEnum, Account account) {
		this.state = stateEnum.getState();
		this.stateInfo = stateEnum.getStateInfo();
		this.account = account;
	}
				
	//操作成功的时候使用的构造器
	public AccountExecution(AccountStateEnum stateEnum, List<Account> accountList) {
		this.state = stateEnum.getState();
		this.stateInfo = stateEnum.getStateInfo();
		this.accountList = accountList;
	}

	public int getState() {
		return state;
	}

	public void setState(int state) {
		this.state = state;
	}

	public String getStateInfo() {
		return stateInfo;
	}

	public void setStateInfo(String stateInfo) {
		this.stateInfo = stateInfo;
	}

	public int getCount() {
		return count;
	}

	public void setCount(int count) {
		this.count = count;
	}

	public long getPages() {
		return pages;
	}

	public void setPages(long pages) {
		this.pages = pages;
	}

	public long getTotal() {
		return total;
	}

	public void setTotal(long total) {
		this.total = total;
	}

	public Account getAccount() {
		return account;
	}

	public void setAccount(Account account) {
		this.account = account;
	}

	public List<Account> getAccountList() {
		return accountList;
	}

	public void setAccountList(List<Account> accountList) {
		this.accountList = accountList;
	}

	public List<Map<String, Object>> getAccountPageList() {
		return accountPageList;
	}

	public void setAccountPageList(List<Map<String, Object>> accountPageList) {
		this.accountPageList = accountPageList;
	}

	public Map<String, Object> getAccountMap() {
		return accountMap;
	}

	public void setAccountMap(Map<String, Object> accountMap) {
		this.accountMap = accountMap;
	}

	public Double getThisMonthAmount() {
		return thisMonthAmount;
	}

	public void setThisMonthAmount(Double thisMonthAmount) {
		this.thisMonthAmount = thisMonthAmount;
	}

	public Double getCurrentAmount() {
		return currentAmount;
	}

	public void setCurrentAmount(Double currentAmount) {
		this.currentAmount = currentAmount;
	}
	
	
}
